// const fileDao = require('../dao/file.dao')
import userMapper from "@/mapper/user.mapper";
import { mysqlLogger } from "@/utils/logger";
import { Result } from "@/utils/result";
// const {UPLOAD_PATH} = require('../config/server')
// import fs from "fs";

class UserService {
    // 注册用户
    async create(ctx, next) {
        // 1.获取用户传递过来信息
        const user = ctx.request.body;

        // 2.将user信息存储到数据库中
        try {
            const result = await userMapper.create(user);
            Result.ok(ctx, result, "创建用户成功~");
        } catch (error) {
            mysqlLogger.error(error);
            Result.err(ctx, { code: 1001, msg: "创建用户失败~" });
        }

        // 3.查看存储的结果, 告知前端创建成功
        // ctx.body = {
        //     message: "创建用户成功~",
        //     data: result
        // };
    }

    // 查询用户
    async getUserById(ctx, next) {
        // 1.获取用户id
        const { id: userId } = ctx.params;

        // 2.根据id查询用户信息
        const user = await userMapper.getUserById(userId);

        Result.ok(ctx, user, "获取用户信息成功~");
    }

    // 查看头像
    //   async showAvatarImage(ctx, next) {
    //     // 1.获取用户的id
    //     const { userId } = ctx.params

    //     // 2.获取userId对应的头像信息
    //     const avatarInfo = await fileDao.queryAvatarWithUserId(userId)

    //     // 3.拼接出文件路径，stream流传输给客户端
    //     const { filename, mimetype } = avatarInfo
    //     ctx.type = mimetype
    //     ctx.body = fs.createReadStream(`${UPLOAD_PATH}/avatar/${filename}`)
    //   }
}

export default new UserService();
